
#include "drv_gpio.h"

static const gpio_module gpio_list[GPIO_OUT_NUM] = {
	{LED1_PINSOURCE, LED1_PINAF, LED1_PIN, LED1_PORT},
	{LED2_PINSOURCE, LED2_PINAF, LED2_PIN, LED2_PORT},
	{LED3_PINSOURCE, LED3_PINAF, LED3_PIN, LED3_PORT},
	{LED4_PINSOURCE, LED4_PINAF, LED4_PIN, LED4_PORT},
};

/**
* @Description:GPIO
* @param none.
* @return none
*/
void out_gpio_init(void)
{
	GPIO_InitTypeDef gpio_init;
	const gpio_module *pgpio = NULL;
	allgpio_clkopen();
    GPIO_StructInit(&gpio_init);
	gpio_init.GPIO_Mode = GPIO_Mode_Out_PP;
	gpio_init.GPIO_Speed = GPIO_Speed_50MHz;
	for (pgpio = gpio_list; pgpio < &gpio_list[GPIO_OUT_NUM]; pgpio++)
	{
		gpio_init.GPIO_Pin = pgpio->pin;
   		GPIO_PinAFConfig(pgpio->gpio, pgpio->pin_source, pgpio->pin_af);
		GPIO_Init(pgpio->gpio, &gpio_init);
	}
}


